// 统一管理首页模块接口
import request from '@/utils/request'

import { HospitalResponseData, HospitalLevelAndRegionResponseData, HospistalInfo } from './type.ts'

// 通过枚举管理首页模块的接口地址
enum API {
    //  获取已有的医院的数据接口地址
    HOSPITAL_URL = '/hosp/hospital/',
    // 获取医院等级与地区接口
    HOSPITALLEVELANDREGION_URL = '/cmn/dict/findByDictCode/',
    // 根据关键字医院的名字获取数据
    HOSPITALINFO_URL = '/hosp/hospital/findByHosname/'
}
// 获取医院的数据
export const reqHospital = (page: number, limit: number, hostype = '', districtCode = '') => {
    return request.get<any, HospitalResponseData>(API.HOSPITAL_URL + `${page}/${limit}?hostype=${hostype}&districtCode=${districtCode}`)
    // return request<any, HospitalResponseData>({
    //     url: API.HOSPITAL_URL + `${page}/${limit}`,
    //     method: 'GET',
    // })
}

/* 
request.get<any, HospitalResponseData>：这是一个类型化的 HTTP GET 请求。<any, HospitalResponseData> 是 TypeScript 的泛型语法，表示这个函数的输入和输出类型。

any 是请求数据的类型。在这里，它被设置为 any，表示请求数据可以是任何类型。这对于 GET 请求来说是常见的，因为 GET 请求通常不需要发送复杂的数据。

HospitalResponseData 是响应数据的类型。这意味着这个 GET 请求应该返回一个 HospitalResponseData 类型的数据。
*/

// 获取医院等级或者地区
export const reqHospitalLevelAndRegion = (dictCode: string) => {
    return request.get<any, HospitalLevelAndRegionResponseData>(API.HOSPITALLEVELANDREGION_URL + dictCode)
}
// 根据关键字获取医院的数据进行展示
export const reqHospitalInfo = (hostname: string) => {
    return request.get<any, HospistalInfo>(API.HOSPITALINFO_URL + hostname)
}